Analyzing Exception Flow in JavaTM Programs?
نویسندگان
چکیده
Exception handling mechanisms provided by programming languages are intended to ease the di culty of developing robust software systems. Using these mechanisms, a software developer can describe the exceptional conditions a module might raise, and the response of the module to exceptional conditions that may occur as it is executing. Creating a robust system from such a localized view requires a developer to reason about the ow of exceptions across modules. The use of unchecked exceptions, and in object-oriented languages, subsumption, makes it difcult for a software developer to perform this reasoning manually. In this paper, we describe a tool called Jex that analyzes the ow of exceptions in Java code to produce views of the exception structure. We demonstrate how Jex can help a developer identify program points where exceptions are caught accidentally, where there is an opportunity to add ner-grained recovery code, and where error-handling policies are not being followed.
منابع مشابه
Analysis of Object-Oriented Programs with Exception-Handling Constructs
In the dependence analysis of object-oriented programs, if the influence of exception propagation on the dependency is not considered, the information will be inaccurate. At present, the existing methods with exception propagation mostly aimed at intra-class analysis, which cannot meet the needs of actual software development. This paper proposes an approach to analyzing inter-class control dep...
متن کاملSECURE PROGRAMMING CONCEPTS IN SELECTED C++ AND JavaTM TEXTBOOKS
Creating secure software applications and writing secure programs are difficult affairs. Secure programs are well designed software applications which meet specified requirements. Well designed software is reliable in its availability and accessibility. The paper’s problem is whether the textbooks used in instruction of beginning programming students directly and actively discuss secure program...
متن کاملData Dependency Graphs for Ada Programs
We present a novel compositional method of constructing data dependency graphs for Ada programs. These graphs are useful in a program development environment for analyzing data dependencies and tracking information flow within a program. Graphs for primitive program statements are combined together to form graphs for larger program units. Composition rules are described for iteration, recursion...
متن کاملRegaining Control of Exception Handling
Just as the structure of the normal operations of a system tends to degrade as the system evolves, the structure of exception handling also degrades. In this paper, we draw on our experience building and analyzing the exception structure of Java programs to describe why and how exception structure degrades. Fortunately, we need not let our exception structure languish. We also relate our experi...
متن کاملAnalysis and Testing of Programs with Exception Handling Constructs
Analysis techniques, such as control flow, data flow, and control dependence, are used for a variety of software-engineering tasks, including structural and regression testing, dynamic execution profiling, static and dynamic slicing, and program understanding. To be applicable to programs in languages, such as Java and C++, these analysis techniques must account for the effects of exception occ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999